The keyReleaseEvent handler does not take into account that a
user might release Alt while still holding shift
(the keycode becomes Meta_L/R in that case).
The result is that the switcher stays open which is unexpected.
https://bugzilla.gnome.org/show_bug.cgi?id=629368
_keyReleaseEvent : function(actor, event) {
let keysym = event.get_key_symbol();
- if (keysym == Clutter.Alt_L || keysym == Clutter.Alt_R)
+ if (keysym == Clutter.Alt_L || keysym == Clutter.Alt_R || keysym == Clutter.Meta_L || keysym == Clutter.Meta_R)
this._finish();
return true;